home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / man / cat.1 / ispellfmt.1 < prev    next >
Text File  |  1995-07-25  |  9KB  |  265 lines

  1.  
  2.  
  3.  
  4.      IIIISSSSPPPPEEEELLLLLLLL((((4444))))                 UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV                 IIIISSSSPPPPEEEELLLLLLLL((((4444))))
  5.  
  6.  
  7.  
  8.      NNNNAAAAMMMMEEEE
  9.           ispell - format of ispell dictionaries
  10.  
  11.      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  12.           Dictionaries for _i_s_p_e_l_l(1) come in two formats: raw, and
  13.           unhashed.  The hashed dictionary is generated by _b_u_i_l_d_h_a_s_h
  14.           (see _i_s_p_e_l_l(1)) from the raw dictionary, and is not
  15.           described here.
  16.  
  17.           A raw _i_s_p_e_l_l dictionary (either the main dictionary or your
  18.           own personal dictionary) contains a list of words, one per
  19.           line.  Each word may optionally be followed by a slash ("/")
  20.           and one or more flags, which modify the root word as
  21.           explained below.  Case is significant in the root word, but
  22.           ignored in the flags.  The dictionary does not need to be
  23.           sorted.
  24.  
  25.           The case of the root word controls the case of words
  26.           accepted by _i_s_p_e_l_l, as follows:
  27.  
  28.           (1)  If the root word appears only in lower case (e.g.,
  29.                "bob"), it will be accepted in lower case, capitalized,
  30.                or all capitals.
  31.  
  32.           (2)  If the root word appears capitalized (e.g., "Robert"),
  33.                it will be not be accepted in all-lower case, but will
  34.                be accepted capitalized or all in capitals.
  35.  
  36.           (3)  If the root word appears all in capitals (e.g.,
  37.                "UNIX"), it will only be accepted all in capitals.
  38.  
  39.           (4)  If the root word appears with a "funny" capitalization
  40.                (e.g., "ITCorp"), a word will be accepted only if it
  41.                follows that capitalization, or if it appears all in
  42.                capitals.
  43.  
  44.           (5)  More than one capitalization of a root word may appear
  45.                in the dictionary.  Flags from different
  46.                capitalizations are combined by OR-ing them together.
  47.  
  48.           Redundant capitalizations (e.g., "bob" and "Bob") will be
  49.           combined by _b_u_i_l_d_h_a_s_h and by _i_s_p_e_l_l (for personal
  50.           dictionaries), and can be removed from a raw dictionary by
  51.           _m_u_n_c_h_l_i_s_t.
  52.  
  53.           For example, the dictionary:
  54.  
  55.                bob
  56.                Robert
  57.                UNIX
  58.                ITcorp
  59.                ITCorp
  60.  
  61.  
  62.  
  63.      Page 1                                           (printed 3/9/94)
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.      IIIISSSSPPPPEEEELLLLLLLL((((4444))))                 UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV                 IIIISSSSPPPPEEEELLLLLLLL((((4444))))
  71.  
  72.  
  73.  
  74.           will accept "bob," "Bob," "BOB," "Robert," "ROBERT," "UNIX,"
  75.           "ITcorp," "ITCorp," and "ITCORP," and will reject all
  76.           others.  Some of the unacceptable forms are "bOb," "robert,"
  77.           "Unix," and "ItCorp."
  78.  
  79.           As mentioned above, root words in any dictionary may be
  80.           extended by flags.  Each flag is a single alphabetic
  81.           character, which represents a suffix that may be added to
  82.           the root to form a new word.  For example, the "D" flag can
  83.           be added to "bathe" to make "bathed".  Since flags are
  84.           represented as a single bit in the hashed dictionary, this
  85.           results in significant space savings.  The _m_u_n_c_h_l_i_s_t script
  86.           will reduce an existing raw dictionary by adding flags when
  87.           possible.
  88.  
  89.           When a word is extended with a suffix, the suffix will be
  90.           accepted only if it appears in the same case as the final
  91.           letter of the word.  Thus, for example, the entry "UNIX/M"
  92.           in the main dictionary ("M" means add an apostrophe and an
  93.           "s" to make a possessive) would accept "UNIX'S" but would
  94.           reject "UNIX's".  If "UNIX's" is legal, it must appear as a
  95.           separate dictionary entry, and it will not be combined by
  96.           _m_u_n_c_h_l_i_s_t.
  97.  
  98.           In the following discussion of the flags, let # and @ be
  99.           "variables" that can stand for any letter.  Upper case
  100.           letters are constants.  "..." stands for any string of zero
  101.           or more letters, but note that no word may exist in the
  102.           dictionary which is not at least 2 letters long, so, for
  103.           example, "fly" may not be produced by placing the "Y" flag
  104.           on "f".  Also, no flag is effective unless the word that it
  105.           creates is at least 4 letters long, so, for example, "wed"
  106.           may not be produced by placing the "D" flag on "we".
  107.  
  108.           The meaning of the flags is as follows:
  109.  
  110.           V
  111.                ...e --> ...ive  as in create --> creative
  112.                if # .ne. e, ...# --> ...#ive  as in prevent -->
  113.                     preventive
  114.  
  115.           N
  116.                ...e --> ...ion  as in create --> creation
  117.                ...y --> ...ication  as in multiply --> multiplication
  118.                if # .ne. e or y, ...# --> ...#en  as in fall -->
  119.                     fallen
  120.  
  121.           X
  122.                ...e --> ...ions  as in create --> creations
  123.                ...y --> ...ications  as in multiply -->
  124.                     multiplications
  125.                if # .ne. e or y, ...# --> ...#ens  as in weak -->
  126.  
  127.  
  128.  
  129.      Page 2                                           (printed 3/9/94)
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.      IIIISSSSPPPPEEEELLLLLLLL((((4444))))                 UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV                 IIIISSSSPPPPEEEELLLLLLLL((((4444))))
  137.  
  138.  
  139.  
  140.                     weakens
  141.  
  142.           H
  143.                ...y --> ...ieth  as in twenty --> twentieth
  144.                if # .ne. y, ...# --> ...#th  as in hundred -->
  145.                     hundredth
  146.  
  147.           Y
  148.                ... --> ...ly  as in quick --> quickly
  149.  
  150.           G
  151.                ...e --> ...ing  as in file --> filing
  152.                if # .ne. e, ...# --> ...#ing  as in cross --> crossing
  153.  
  154.           J
  155.                ...e --> ...ings  as in file --> filings
  156.                if # .ne. e, ...# --> ...#ings  as in cross -->
  157.                     crossings
  158.  
  159.           D
  160.                ...e --> ...ed  as in create --> created
  161.                if @ .ne. a, e, i, o, or u, ...@y --> ...@ied  as in
  162.                     imply --> implied
  163.                if # .ne. e or y, or (# = y and @ = a, e, i, o, or u)
  164.                     ...@# --> ...@#ed  as in cross --> crossed or
  165.                     convey --> conveyed
  166.  
  167.           T
  168.                ...e --> ...est  as in late --> latest
  169.                if @ .ne. a, e, i, o, or u, ...@y --> ...@iest  as in
  170.                     dirty --> dirtiest
  171.                if # .ne. e or y, or (# = y and @ = a, e, i, o, or u)
  172.                     ...@# --> ...@#est  as in small --> smallest or
  173.                     gray --> grayest
  174.  
  175.           R
  176.                ...e --> ...er  as in skate --> skater
  177.                if @ .ne. a, e, i, o, or u, ...@y --> ...@ier  as in
  178.                     multiply --> multiplier
  179.                if # .ne. e or y, or (# = y and @ = a, e, i, o, or u)
  180.                     ...@# --> ...@#er  as in build --> builder or
  181.                     convey --> conveyer
  182.  
  183.           Z
  184.                ...e --> ...ers  as in skate --> skaters
  185.                if @ .ne. a, e, i, o, or u, ...@y --> ...@iers  as in
  186.                     multiply --> multipliers
  187.                if # .ne. e or y, or (# = y and @ = a, e, i, o, or u)
  188.                     ...@# --> ...@#ers  as in build --> builders or
  189.                     slay --> slayers
  190.  
  191.           S
  192.  
  193.  
  194.  
  195.      Page 3                                           (printed 3/9/94)
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.      IIIISSSSPPPPEEEELLLLLLLL((((4444))))                 UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV                 IIIISSSSPPPPEEEELLLLLLLL((((4444))))
  203.  
  204.  
  205.  
  206.                if @ .ne. a, e, i, o, or u, ...@y --> ...@ies  as in
  207.                     imply --> implies
  208.                if # .eq. s, x, z, or h, ...# --> ...#es  as in fix -->
  209.                     fixes
  210.                if # .ne. s, x, z, h, or y, or (# = y and @ = a, e, i,
  211.                     o, or u) ...@# --> ...@#s  as in bat --> bats or
  212.                     convey --> conveys
  213.  
  214.           P
  215.                if @ .ne. a, e, i, o, or u, ...@y --> ...@iness  as in
  216.                     cloudy --> cloudiness
  217.                if # .ne. y, or @ = a, e, i, o, or u, ...@# -->
  218.                     ...@#ness  as in late --> lateness or gray -->
  219.                     grayness
  220.  
  221.           M
  222.                ... --> ...'s  as in dog --> dog's
  223.  
  224.           To summarize more briefly:
  225.  
  226.                V - ive
  227.                N - ion, tion, en
  228.                X - ions, ications, ens
  229.                H - th, ieth
  230.                Y - ly
  231.                G - ing
  232.                J - ings
  233.                D - ed
  234.                T - est
  235.                R - er
  236.                Z - ers
  237.                S - s, es, ies
  238.                P - ness, iness
  239.                M - 's
  240.  
  241.      SSSSEEEEEEEE AAAALLLLSSSSOOOO
  242.           ispell(1)
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.      Page 4                                           (printed 3/9/94)
  262.  
  263.  
  264.  
  265.